<?php

namespace Sistema\AdminBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**
 * Sistema\AdminBundle\Entity\Fecha
 *
 * @ORM\Table(name="Fecha")
 * @ORM\Entity(repositoryClass="Sistema\AdminBundle\Repository\FechaRepository")
 */
class Fecha
{
    /**
     * @var integer $id
     *
     * @ORM\Column(name="id", type="bigint", nullable=false)
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="IDENTITY")
     */
    private $id;
    
    /**
     * @var string $numero
     *
     * @ORM\Column(name="numero", type="string", length=200, nullable=false)
     */
    private $numero;

    /**
     * @var Grupo
     *
     * @ORM\ManyToOne(targetEntity="Grupo")
     * @ORM\JoinColumns({
     *   @ORM\JoinColumn(name="id_grupo", referencedColumnName="id", onDelete="CASCADE")
     * })
     */
    private $idGrupo;

    public function __toString()
    {
        return $this->getNumero().' - '.$this->getIdGrupo();
    }
    
    /**
     * @ORM\OneToMany(targetEntity="Partido", mappedBy="idFecha", cascade={"remove"})
     */
    private $idPartido;
    
    /**
     * Constructor
     */
    public function __construct()
    {
        $this->idPartido = new \Doctrine\Common\Collections\ArrayCollection();
    }

    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Set numero
     *
     * @param string $numero
     * @return Fecha
     */
    public function setNumero($numero)
    {
        $this->numero = $numero;
    
        return $this;
    }

    /**
     * Get numero
     *
     * @return string 
     */
    public function getNumero()
    {
        return $this->numero;
    }

    /**
     * Set idGrupo
     *
     * @param Sistema\AdminBundle\Entity\Grupo $idGrupo
     * @return Fecha
     */
    public function setIdGrupo(\Sistema\AdminBundle\Entity\Grupo $idGrupo = null)
    {
        $this->idGrupo = $idGrupo;
    
        return $this;
    }

    /**
     * Get idGrupo
     *
     * @return Sistema\AdminBundle\Entity\Grupo 
     */
    public function getIdGrupo()
    {
        return $this->idGrupo;
    }
    
    /**
     * Add idPartido
     *
     * @param Sistema\AdminBundle\Entity\Partido $idPartido
     * @return Fecha
     */
    public function addIdPartido(\Sistema\AdminBundle\Entity\Partido $idPartido)
    {
        $this->idPartido[] = $idPartido;
    
        return $this;
    }

    /**
     * Remove idPartido
     *
     * @param Sistema\AdminBundle\Entity\Partido $idPartido
     */
    public function removeIdPartido(\Sistema\AdminBundle\Entity\Partido $idPartido)
    {
        $this->idPartido->removeElement($idPartido);
    }

    /**
     * Get idPartido
     *
     * @return Doctrine\Common\Collections\Collection 
     */
    public function getIdPartido()
    {
        return $this->idPartido;
    }
}
